package com.gph.saviorframework.es.core.convert;

import com.gph.saviorframework.es.core.mapping.ElasticsearchPersistentEntity;
import com.gph.saviorframework.es.core.mapping.ElasticsearchPersistentProperty;
import org.springframework.core.convert.ConversionService;
import org.springframework.data.mapping.context.MappingContext;

public interface ElasticsearchConverter {

	/**
	 * Returns the underlying {@link MappingContext} used by the converter.
	 *
	 * @return never {@literal null}
	 */
	MappingContext<? extends ElasticsearchPersistentEntity<?>, ElasticsearchPersistentProperty> getMappingContext();

	/**
	 * Returns the underlying {@link ConversionService} used by the converter.
	 *
	 * @return never {@literal null}.
	 */
	ConversionService getConversionService();
}
